#include <stdio.h>
#include <stdlib.h>
#include <dlfcn.h>

int main(void)
{
	void *handle;
	int (*cosine)(int,int);
	char *error;
	handle = dlopen("./libsum.so", RTLD_LAZY);
	if (!handle){
		fputs(dlerror(),stderr);
		exit(1);
	}

	cosine = dlsym(handle,"sum");
	if((error = dlerror())!= NULL){
		fputs(error,stderr);
		exit(1);	
	}

	printf("%d\n",(*cosine)(5,4));
	dlclose(handle);
	return 0;
}
